Amazon SageMaker ドメインのアクセス認証がAWS IAM Identity Centerの場合、ユーザー同士でファイル共有する方法2選

Amazon SageMaker ドメインのアクセス認証がAWS IAM Identity Centerの場合、ユーザー同士でファイル共有する方法2選

Clock Icon2023.07.21

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

Amazon SageMaker ドメイン(以降、ドメイン)へのアクセスの認証方法は、以下の2つがあります

  • IAMユーザー等で、AWSマネジメントコンソールを使用してドメインにアクセスする
  • AWS IAM Identity Center経由で、ブックマークされた URL を使用してドメインにアクセスする

前者の場合、ドメイン内のユーザー(ユーザプロファイル)同士でファイル共有する場合、共有スペース機能で簡単にファイル共有が可能です。

共有スペース機能とは、SageMaker Studioのユーザー同士が共同で作業を行うことのできるSageMaker Studio環境です。

下記記事が参考になります

SageMaker Studio 共有スペースで共同編集を行ってみた

IAM Identity Center経由の場合、共有スペース機能がないため、他の方法でファイル共有する必要があります。

今回は、共有する方法を2つ紹介します。

  • SageMaker StudioのTerminalでAWS CLIを利用し、S3バケットでファイルを共有する
  • リモートリポジトリを利用しファイルを共有する

S3バケットでファイルを共有する

SageMaker Studio環境では、Terminalを利用できます

Terminal上で、AWS CLIを利用し、S3バケットにファイルをダウンロードやアップロードすることで、ユーザー同士でファイルが共有できます。

実際にやってみましょう。

ドメイン内のユーザー用の実行ロール

ドメイン内の各ユーザーには、ユーザーごとに実行ロールを設定します。

この実行ロールは、ユーザーがStudio環境内で実行できるアクションを制御します。

ユーザー用の実行ロールにAmazonSageMakerFullAccessをアタッチします。

AWS CLIの最新バージョンをインストール

Terminalを起動し、AWS CLI バージョン2をインストールします。

インストール方法は、下記記事をご参考下さい

S3でファイルを共有

ファイルをS3にアップロード、ダウンロードしてみます。

S3に関するCLIのコマンドは、以下の記事でまとめられております。

Terminal起動後、以下のコマンドで、ファイルをS3にアップロードします

$ aws s3 sync {フォルダパス} s3://{バケット名}/{パス}
$ aws s3 cp {ファイル名} s3://{バケット名}/{パス}

以下のコマンドで、S3からファイルやフォルダごとダウンロードできます。

$ aws s3 sync s3://{バケット名}/{フォルダ名}/ ./ --recursive
$ aws s3 cp s3://{バケット名}/{ファイル名} ./

このようにS3バケットを利用して、ユーザー同士でファイル共有ができます。

リモートリポジトリを利用しファイルを共有する

SageMaker Studio には、Git リポジトリのURLを入力しクローン、変更をプッシュ、コミット履歴を表示、などができる Git 拡張機能が用意されています。

CodeCommit や GitHubなどのソース管理サービスが利用できます。

今回は、Githubのプライベートリポジトリを利用してみます。

GithubリポジトリのURLは、リポジトリページからURLをコピーします

GitHubリポジトリURLをドメインにアタッチ

まず、ドメイン内でGitHubのリポジトリURLをアタッチします。

コンソール上のドメインから[環境]タブの[ドメインの推奨コードリポジトリ]からアタッチをクリックします

GitHubのリポジトリのURLを入力し、アタッチします。

アタッチすることで、ドメイン内でStudioを起動した全てのユーザーは、リポジトリがクローンされます。

Studioを起動

Studioを起動すると、リポジトリが表示され、リポジトリ内のファイルもクローンされています。

リポジトリをプルやプッシュするときは、GitHubアカウントのユーザー名とアクセストークンが必要です。

アクセストークンの発行方法は、下記の記事をご参考下さい

このように、リモートリポジトリ経由でファイル共有が簡単にできることが分かります。

最後に

今回は、Amazon SageMaker ドメインへのアクセスの認証方法がAWS IAM Identity Centerの場合、ユーザー同士でファイル共有する方法2つをご紹介しました。

参考になれば幸いです。

参考

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.